package secondStage.part6.方法引用类.引用类方法;

/**
 * @ClassName: [ConverterDemo]
 * @Description: 接口测试类
 * @Author: [黄劲松]
 * @CreateDate: [2021-04-14]
 * @Version: [v1.0]
 */
/*
1.4引用类方法
    引用类方法，其实就是引用类的静态方法
    ●格式:类名::静态方法
    ●范例: Integer:parselnt
    Integer类的方法: public static int parseInt(String s)将此String转换为int类型数据
1:定义一个接口(Converter),里面定义- -个抽象方法:
    int convert(String s);
2:定义一个测试类(ConverterDemo)，在测试类中提供两个方法
    一个方法是: useConverter(Converter c)
    一个方法是主方法，在主方法中调用useConverter方法
 */
public class ConverterDemo {
    public static void main(String[] args) {
        /*useConverter((String s)->{
            return Integer.parseInt(s);
        });*/
        useConverter(s->Integer.parseInt(s));
        System.out.println("引用类方法");

        //引用类方法
        useConverter(Integer::parseInt);
        //Lambda表达式被类方法替代的时候，它的形式参数全部传递給静态方法作为参数
    }
    private static void useConverter(Converter c){
        int number = c.convert("6666");
        System.out.println(number);
    }
}
